[INFO] cloning repository https://github.com/Bayernatoor/btc_self_custody
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Bayernatoor/btc_self_custody" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBayernatoor%2Fbtc_self_custody", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBayernatoor%2Fbtc_self_custody'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] b7b9b1cb4ca818df16010ebf0348656f26b5202c
[INFO] fixing Bayernatoor/btc_self_custody against try#622891a4e29178280638a6b63a8908bde2c0c854+cargoflags=-Zfix-edition=end=2015,2024 for pr-157817-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FBayernatoor%2Fbtc_self_custody" "/workspace/builds/worker-3-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-3-tc2/source'...
[INFO] [stderr] done.
[INFO] removed /workspace/builds/worker-3-tc2/source/rust-toolchain.toml
[INFO] started tweaking git repo https://github.com/Bayernatoor/btc_self_custody
[INFO] finished tweaking git repo https://github.com/Bayernatoor/btc_self_custody
[INFO] tweaked toml for git repo https://github.com/Bayernatoor/btc_self_custody written to /workspace/builds/worker-3-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Bayernatoor/btc_self_custody on toolchain 622891a4e29178280638a6b63a8908bde2c0c854
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Bayernatoor/btc_self_custody already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/source:/opt/rustwide/workdir:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-3-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3a6becf2bc8dde7f3fa57ede90e4f284e72d296796fc446bbb1e2c7cc0530151" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] 4a88e0da3022d099521faacfff3acf494d352c2dd22edc8c0828a3ef432206be
[INFO] running `Command { std: "docker" "start" "4a88e0da3022d099521faacfff3acf494d352c2dd22edc8c0828a3ef432206be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4a88e0da3022d099521faacfff3acf494d352c2dd22edc8c0828a3ef432206be" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4a88e0da3022d099521faacfff3acf494d352c2dd22edc8c0828a3ef432206be", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=" "-e" "RUSTDOCFLAGS=" "-w" "/opt/rustwide/workdir" "--user" "0:0" "4a88e0da3022d099521faacfff3acf494d352c2dd22edc8c0828a3ef432206be" "/opt/rustwide/cargo-home/bin/cargo" "+622891a4e29178280638a6b63a8908bde2c0c854" "fix" "--allow-no-vcs" "--allow-dirty" "--frozen" "--all" "--all-targets" "--message-format=json" "-Zfix-edition=end=2015,2024", kill_on_drop: false }`
[INFO] [stderr] crater-edition-check: migrating to next edition
[INFO] [stderr]    Migrating Cargo.toml from 2021 edition to 2024
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling libc v0.2.183
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]     Checking futures-task v0.3.32
[INFO] [stderr]    Compiling wasm-bindgen-shared v0.2.114
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling zerocopy v0.8.47
[INFO] [stderr]    Compiling bumpalo v3.20.2
[INFO] [stderr]    Compiling wasm-bindgen v0.2.114
[INFO] [stderr]    Compiling convert_case v0.11.0
[INFO] [stderr]    Compiling cc v1.2.57
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]     Checking or_poisoned v0.1.0
[INFO] [stderr]     Checking event-listener v5.4.1
[INFO] [stderr]    Compiling typenum v1.19.0
[INFO] [stderr]    Compiling slotmap v1.1.1
[INFO] [stderr]     Checking throw_error v0.3.1
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]     Checking rand_core v0.10.0
[INFO] [stderr]     Checking event-listener-strategy v0.5.4
[INFO] [stderr]    Compiling server_fn_macro v0.8.10
[INFO] [stderr]    Compiling reactive_graph v0.2.13
[INFO] [stderr]     Checking send_wrapper v0.6.0
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling camino v1.2.2
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling proc-macro-utils v0.10.0
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling proc-macro-error-attr2 v2.0.0
[INFO] [stderr]    Compiling const_format_proc_macros v0.2.34
[INFO] [stderr]     Checking parking_lot_core v0.9.12
[INFO] [stderr]     Checking parking_lot v0.12.5
[INFO] [stderr]     Checking errno v0.3.14
[INFO] [stderr]     Checking socket2 v0.6.3
[INFO] [stderr]     Checking signal-hook-registry v1.4.8
[INFO] [stderr]     Checking mio v1.1.1
[INFO] [stderr]     Checking getrandom v0.3.4
[INFO] [stderr]     Checking rand_core v0.9.5
[INFO] [stderr]    Compiling const_format v0.2.35
[INFO] [stderr]     Checking async-lock v3.4.2
[INFO] [stderr]     Checking sha1 v0.10.6
[INFO] [stderr]    Compiling multer v3.1.0
[INFO] [stderr]     Checking serde_json v1.0.149
[INFO] [stderr]     Checking guardian v1.3.0
[INFO] [stderr]    Compiling xxhash-rust v0.8.15
[INFO] [stderr]     Checking itertools v0.14.0
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.7
[INFO] [stderr]    Compiling manyhow-macros v0.11.4
[INFO] [stderr]    Compiling tachys v0.2.14
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking utf8-width v0.1.8
[INFO] [stderr]     Checking winnow v1.0.0
[INFO] [stderr]     Checking html-escape v0.2.13
[INFO] [stderr]    Compiling digest v0.10.7
[INFO] [stderr]     Checking serde_path_to_error v0.1.20
[INFO] [stderr]     Checking serde_spanned v1.0.4
[INFO] [stderr]     Checking toml_datetime v1.0.1+spec-1.1.0
[INFO] [stderr]    Compiling openssl-sys v0.9.112
[INFO] [stderr]     Checking either_of v0.1.8
[INFO] [stderr]    Compiling server_fn v0.8.11
[INFO] [stderr]     Checking erased v0.1.2
[INFO] [stderr]    Compiling interpolator v0.5.0
[INFO] [stderr]     Checking next_tuple v0.1.0
[INFO] [stderr]     Checking toml_parser v1.0.10+spec-1.1.0
[INFO] [stderr]    Compiling collection_literals v1.0.3
[INFO] [stderr]     Checking const_str_slice_concat v0.1.0
[INFO] [stderr]     Checking drain_filter_polyfill v0.1.3
[INFO] [stderr]     Checking convert_case v0.6.0
[INFO] [stderr]    Compiling sha2 v0.10.9
[INFO] [stderr]     Checking toml v1.0.7+spec-1.1.0
[INFO] [stderr]    Compiling leptos_macro v0.8.15
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]     Checking pathdiff v0.2.3
[INFO] [stderr]    Compiling either v1.15.0
[INFO] [stderr]    Compiling base16 v0.2.1
[INFO] [stderr]     Checking const-str v1.1.0
[INFO] [stderr]     Checking rand_chacha v0.9.0
[INFO] [stderr]     Checking config v0.15.22
[INFO] [stderr]     Checking rand v0.9.2
[INFO] [stderr]    Compiling uuid v1.22.0
[INFO] [stderr]    Compiling convert_case_extras v0.2.0
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling wasm-bindgen-macro-support v0.2.114
[INFO] [stderr]    Compiling proc-macro-error2 v2.0.1
[INFO] [stderr]    Compiling manyhow v0.11.4
[INFO] [stderr]    Compiling prettyplease v0.2.37
[INFO] [stderr]    Compiling leptos v0.8.17
[INFO] [stderr]     Checking simd-adler32 v0.3.8
[INFO] [stderr]     Checking async-once-cell v0.5.4
[INFO] [stderr]     Checking ahash v0.8.12
[INFO] [stderr]    Compiling openssl v0.10.76
[INFO] [stderr]     Checking brotli v8.0.2
[INFO] [stderr]     Checking miniz_oxide v0.8.9
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking cpufeatures v0.3.0
[INFO] [stderr]    Compiling darling_core v0.20.11
[INFO] [stderr]     Checking flate2 v1.1.9
[INFO] [stderr]    Compiling native-tls v0.2.18
[INFO] [stderr]     Checking chacha20 v0.10.0
[INFO] [stderr]    Compiling libsqlite3-sys v0.30.1
[INFO] [stderr]     Checking getrandom v0.2.17
[INFO] [stderr]    Compiling leptos_router v0.8.12
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking rand v0.10.0
[INFO] [stderr]    Compiling cookie v0.18.1
[INFO] [stderr]    Compiling futures-macro v0.3.32
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling tokio-macros v2.6.1
[INFO] [stderr]     Checking futures-util v0.3.32
[INFO] [stderr]     Checking tokio v1.50.0
[INFO] [stderr]    Compiling zerofrom-derive v0.1.6
[INFO] [stderr]    Compiling yoke-derive v0.8.1
[INFO] [stderr]    Compiling wasm-bindgen-macro v0.2.114
[INFO] [stderr]     Checking thiserror v2.0.18
[INFO] [stderr]    Compiling zerovec-derive v0.11.2
[INFO] [stderr]     Checking zerofrom v0.1.6
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]     Checking yoke v0.8.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]     Checking zerotrie v0.2.3
[INFO] [stderr]    Compiling derive-where v1.6.1
[INFO] [stderr]     Checking zerovec v0.11.5
[INFO] [stderr]     Checking futures-executor v0.3.32
[INFO] [stderr]     Checking futures v0.3.32
[INFO] [stderr]    Compiling syn_derive v0.2.0
[INFO] [stderr]     Checking js-sys v0.3.91
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]     Checking serde_urlencoded v0.7.1
[INFO] [stderr]     Checking tracing v0.1.44
[INFO] [stderr]     Checking tungstenite v0.28.0
[INFO] [stderr]    Compiling pin-project-internal v1.1.11
[INFO] [stderr]     Checking tinystr v0.8.2
[INFO] [stderr]     Checking potential_utf v0.1.4
[INFO] [stderr]     Checking icu_collections v2.1.1
[INFO] [stderr]     Checking icu_locale_core v2.1.1
[INFO] [stderr]    Compiling async-trait v0.1.89
[INFO] [stderr]    Compiling reactive_stores_macro v0.4.1
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]    Compiling quote-use-macros v0.8.4
[INFO] [stderr]     Checking pin-project v1.1.11
[INFO] [stderr]     Checking axum-core v0.5.6
[INFO] [stderr]    Compiling quote-use v0.8.4
[INFO] [stderr]     Checking oco_ref v0.2.1
[INFO] [stderr]     Checking tokio-util v0.7.18
[INFO] [stderr]     Checking icu_provider v2.1.1
[INFO] [stderr]     Checking tower v0.5.3
[INFO] [stderr]     Checking tokio-tungstenite v0.28.0
[INFO] [stderr]     Checking icu_properties v2.1.2
[INFO] [stderr]     Checking icu_normalizer v2.1.1
[INFO] [stderr]    Compiling rstml v0.12.1
[INFO] [stderr]    Compiling attribute-derive-macro v0.10.5
[INFO] [stderr]     Checking h2 v0.4.13
[INFO] [stderr]     Checking serde_qs v0.15.0
[INFO] [stderr]    Compiling server_fn_macro_default v0.8.5
[INFO] [stderr]    Compiling typed-builder-macro v0.23.2
[INFO] [stderr]     Checking idna_adapter v1.2.1
[INFO] [stderr]    Compiling attribute-derive v0.10.5
[INFO] [stderr]     Checking idna v1.1.0
[INFO] [stderr]    Compiling leptos_hot_reload v0.8.6
[INFO] [stderr]     Checking url v2.5.8
[INFO] [stderr]     Checking codee v0.3.5
[INFO] [stderr]    Compiling wasm_split_macros v0.2.0
[INFO] [stderr]    Compiling openssl-macros v0.1.1
[INFO] [stderr]     Checking wasm_split_helpers v0.2.0
[INFO] [stderr]     Checking compression-codecs v0.4.37
[INFO] [stderr]    Compiling darling_macro v0.20.11
[INFO] [stderr]     Checking async-compression v0.4.41
[INFO] [stderr]    Compiling leptos_router_macro v0.8.6
[INFO] [stderr]     Checking typed-builder v0.23.2
[INFO] [stderr]     Checking leptos_config v0.8.9
[INFO] [stderr]     Checking tower-http v0.6.8
[INFO] [stderr]     Checking time v0.3.47
[INFO] [stderr]    Compiling darling v0.20.11
[INFO] [stderr]     Checking unic-langid-impl v0.9.6
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking hashlink v0.9.1
[INFO] [stderr]     Checking scheduled-thread-pool v0.2.7
[INFO] [stderr]    Compiling pulldown-cmark v0.12.2
[INFO] [stderr]     Checking hyper v1.8.1
[INFO] [stderr]    Compiling leptos-use v0.16.3
[INFO] [stderr]     Checking chrono v0.4.44
[INFO] [stderr]     Checking getopts v0.2.24
[INFO] [stderr]     Checking r2d2 v0.8.10
[INFO] [stderr]     Checking rusqlite v0.32.1
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking unic-langid v0.9.6
[INFO] [stderr]    Compiling default-struct-builder v0.5.1
[INFO] [stderr]     Checking wasm-bindgen-futures v0.4.64
[INFO] [stderr]     Checking web-sys v0.3.91
[INFO] [stderr]     Checking hyper-util v0.1.20
[INFO] [stderr]     Checking hydration_context v0.3.0
[INFO] [stderr]     Checking any_spawner v0.3.0
[INFO] [stderr]     Checking gloo-timers v0.3.0
[INFO] [stderr]     Checking asynchronous-codec v0.7.0
[INFO] [stderr]     Checking dashmap v5.5.3
[INFO] [stderr]     Checking pulldown-cmark-escape v0.11.0
[INFO] [stderr]     Checking tracing-subscriber v0.3.23
[INFO] [stderr]     Checking r2d2_sqlite v0.25.0
[INFO] [stderr]     Checking console_error_panic_hook v0.1.7
[INFO] [stderr]     Checking tempfile v3.27.0
[INFO] [stderr]     Checking zeromq v0.4.1
[INFO] [stderr]     Checking tokio-native-tls v0.3.1
[INFO] [stderr]     Checking axum v0.8.8
[INFO] [stderr]     Checking hyper-tls v0.6.0
[INFO] [stderr]     Checking reactive_stores v0.4.2
[INFO] [stderr]     Checking reqwest v0.12.28
[INFO] [stderr]     Checking gloo-utils v0.2.0
[INFO] [stderr]     Checking wasm-streams v0.5.0
[INFO] [stderr]     Checking gloo-net v0.6.0
[INFO] [stderr]     Checking leptos_server v0.8.7
[INFO] [stderr]     Checking leptos_dom v0.8.8
[INFO] [stderr]     Checking leptos_meta v0.8.6
[INFO] [stderr]     Checking leptos_integration_utils v0.8.8
[INFO] [stderr]     Checking leptos_axum v0.8.8
[INFO] [stderr]     Checking we_hodl_btc v0.5.0 (/opt/rustwide/workdir)
[INFO] [stderr]    Migrating src/lib.rs from 2021 edition to 2024
[INFO] [stderr]        Fixed src/routes/guide.rs (4 fixes)
[INFO] [stderr]        Fixed src/stats/ingest.rs (1 fix)
[INFO] [stderr]        Fixed src/routes/observatory/shared/mod.rs (5 fixes)
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let stored_hash = match db::query_block_hash(&conn, height) {
[INFO] [stdout]     |                                 -----------------------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 201 |         let canonical_hash = match rpc.get_block_hash(height).await {
[INFO] [stdout]     |                                    --------------------------------
[INFO] [stdout]     |                                    |                          |
[INFO] [stdout]     |                                    |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                    |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 215 |                 db::insert_reorg(&conn, height, &stored_hash, &canonical_hash);
[INFO] [stdout]     |                 --------------------------------------------------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 218 |             let _ = db::delete_block(&conn, height);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |             match rpc.fetch_block_by_height(height).await {
[INFO] [stdout]     |                   ---------------------------------------
[INFO] [stdout]     |                   |                                 |
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                   |                                 `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 227 |                 Ok(block) => {
[INFO] [stdout] 228 |                     match db::insert_blocks(&conn, &[block]) { Err(e) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^       -
[INFO] [stdout]     |                           |                                        |
[INFO] [stdout]     |                           |                                        `e` calls a custom destructor
[INFO] [stdout]     |                           |                                        `e` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                           up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 236 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 237 |                 Err(e) => tracing::error!(
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:226:19
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let stored_hash = match db::query_block_hash(&conn, height) {
[INFO] [stdout]     |                                 -----------------------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 201 |         let canonical_hash = match rpc.get_block_hash(height).await {
[INFO] [stdout]     |                                    --------------------------------
[INFO] [stdout]     |                                    |                          |
[INFO] [stdout]     |                                    |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                    |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 215 |                 db::insert_reorg(&conn, height, &stored_hash, &canonical_hash);
[INFO] [stdout]     |                 --------------------------------------------------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 218 |             let _ = db::delete_block(&conn, height);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |             match rpc.fetch_block_by_height(height).await {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                   |                                 |
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                   |                                 up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                   |                                 `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 227 |                 Ok(block) => {
[INFO] [stdout] 228 |                     match db::insert_blocks(&conn, &[block]) { Err(e) => {
[INFO] [stdout]     |                                                                    -
[INFO] [stdout]     |                                                                    |
[INFO] [stdout]     |                                                                    `e` calls a custom destructor
[INFO] [stdout]     |                                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 237 |                 Err(e) => tracing::error!(
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 241 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:323:29
[INFO] [stdout]     |
[INFO] [stdout] 316 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 323 |             if let Err(e) = db::update_block_extras(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 327 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:434:29
[INFO] [stdout]     |
[INFO] [stdout] 427 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 434 |             if let Err(e) = db::insert_blocks(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 438 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:518:29
[INFO] [stdout]     |
[INFO] [stdout] 511 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 518 |             if let Err(e) = db::insert_blocks(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 522 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/startup.rs:59:25
[INFO] [stdout]     |
[INFO] [stdout]  50 |         let conn = pool
[INFO] [stdout]     |             ----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `conn` calls a custom destructor
[INFO] [stdout]     |             `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  59 |         if let Err(e) = db::rebuild_all_daily_blocks(&conn) {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  62 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/zmq_subscriber.rs:694:15
[INFO] [stdout]      |
[INFO] [stdout]  692 |             tokio::time::sleep(Duration::from_secs(1)).await;
[INFO] [stdout]      |             ------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  693 |         }
[INFO] [stdout]  694 |         match state.rpc.get_block_txids(hash).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                               |
[INFO] [stdout]      |               |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  698 |             Err(e) => {
[INFO] [stdout]      |                 -
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `e` calls a custom destructor
[INFO] [stdout]      |                 `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  706 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/startup.rs:244:23
[INFO] [stdout]      |
[INFO] [stdout]  243 |                 tokio::time::sleep(std::time::Duration::from_secs(90)).await;
[INFO] [stdout]      |                 ------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  244 |                 match state.rpc.fetch_price().await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                       |
[INFO] [stdout]      |                       |                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                       |                       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  245 |                     Ok(price) => state.price_cache.insert((), price),
[INFO] [stdout]  246 |                     Err(e) => tracing::debug!("Price refresh failed: {e}"),
[INFO] [stdout]      |                         -
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout]  247 |                 }
[INFO] [stdout]  248 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/startup.rs:294:39
[INFO] [stdout]      |
[INFO] [stdout]  265 |                   tokio::time::sleep(std::time::Duration::from_secs(15)).await;
[INFO] [stdout]      |                   ------------------------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  266 |                   ingest::poll_new_blocks(&state.rpc, &state.db).await;
[INFO] [stdout]      |                   ----------------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  273 | /                 ingest::verify_recent_blocks(
[INFO] [stdout]  274 | |                     &state.rpc,
[INFO] [stdout]  275 | |                     &state.db,
[INFO] [stdout]  276 | |                     super::rpc::REORG_DETECTION_DEPTH,
[INFO] [stdout]  277 | |                 )
[INFO] [stdout]  278 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |                       if let Ok(conn) = state.db.get() {
[INFO] [stdout]      |                                 ----    ^^^^^^^^^^^^^^
[INFO] [stdout]      |                                 |       |
[INFO] [stdout]      |                                 |       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 |       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 `conn` calls a custom destructor
[INFO] [stdout]      |                                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  301 |                           let _ = db::refresh_daily_block(&conn, &today);
[INFO] [stdout]      |                                   --------------------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  302 |                       }
[INFO] [stdout]  303 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]      |
[INFO] [stdout]  611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout]  612 | | where
[INFO] [stdout]  613 | |     M: ManageConnection,
[INFO] [stdout]      | |________________________^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]      |
[INFO] [stdout]  611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout]  612 | | where
[INFO] [stdout]  613 | |     M: ManageConnection,
[INFO] [stdout]      | |________________________^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: `--force-warn rust-2024-incompatible-pat` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Migrating src/main.rs from 2021 edition to 2024
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:106:31
[INFO] [stdout]     |
[INFO] [stdout] 106 |       let fee_pressure_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 107 | |         dashboard_data,
[INFO] [stdout] 108 | |         range,
[INFO] [stdout] 109 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 114 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:115:28
[INFO] [stdout]     |
[INFO] [stdout] 115 |       let fee_spike_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 116 | |         dashboard_data,
[INFO] [stdout] 117 | |         range,
[INFO] [stdout] 118 | |         overlay_flags,
[INFO] [stdout] 119 | |         |blocks| crate::stats::charts::fee_spike_chart(blocks),
[INFO] [stdout] 120 | |         |_days| crate::stats::charts::no_data_chart("Fee Spike Detector")
[INFO] [stdout] 121 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:122:30
[INFO] [stdout]     |
[INFO] [stdout] 122 |       let halving_era_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 123 | |         dashboard_data,
[INFO] [stdout] 124 | |         range,
[INFO] [stdout] 125 | |         overlay_flags,
[INFO] [stdout] 126 | |         |blocks| crate::stats::charts::halving_era_chart(blocks),
[INFO] [stdout] 127 | |         |days| crate::stats::charts::halving_era_chart_daily(days)
[INFO] [stdout] 128 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:129:30
[INFO] [stdout]     |
[INFO] [stdout] 129 |       let fee_heatmap_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 130 | |         dashboard_data,
[INFO] [stdout] 131 | |         range,
[INFO] [stdout] 132 | |         overlay_flags,
[INFO] [stdout] 133 | |         |blocks| crate::stats::charts::fee_rate_heatmap_chart(blocks),
[INFO] [stdout] 134 | |         |_days| crate::stats::charts::no_data_chart("Fee Rate Bands (Full)")
[INFO] [stdout] 135 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:136:29
[INFO] [stdout]     |
[INFO] [stdout] 136 |       let max_tx_fee_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 137 | |         dashboard_data,
[INFO] [stdout] 138 | |         range,
[INFO] [stdout] 139 | |         overlay_flags,
[INFO] [stdout] 140 | |         |blocks| crate::stats::charts::max_tx_fee_chart(blocks),
[INFO] [stdout] 141 | |         |_days| crate::stats::charts::no_data_chart("Max Transaction Fee")
[INFO] [stdout] 142 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:143:32
[INFO] [stdout]     |
[INFO] [stdout] 143 |       let protocol_fees_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 144 | |         dashboard_data,
[INFO] [stdout] 145 | |         range,
[INFO] [stdout] 146 | |         overlay_flags,
[INFO] [stdout] 147 | |         |blocks| crate::stats::charts::protocol_fee_breakdown_chart(blocks),
[INFO] [stdout] 148 | |         |_days| crate::stats::charts::no_data_chart("Protocol Fee Revenue")
[INFO] [stdout] 149 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:79:35
[INFO] [stdout]    |
[INFO] [stdout] 79 |                   let diff_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________-
[INFO] [stdout] 80 | |                     |blocks| crate::stats::charts::difficulty_chart(blocks),
[INFO] [stdout] 81 | |                     |days| crate::stats::charts::difficulty_chart_daily(days)
[INFO] [stdout] 82 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/mining.rs:83:42
[INFO] [stdout]    |
[INFO] [stdout] 83 |                   let diff_ribbon_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  __________________________________________-
[INFO] [stdout] 84 | |                     |blocks| crate::stats::charts::difficulty_ribbon_chart(blocks),
[INFO] [stdout] 85 | |                     |days| crate::stats::charts::difficulty_ribbon_chart_daily(days)
[INFO] [stdout] 86 | |                 );
[INFO] [stdout]    | |_________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:28:23
[INFO] [stdout]    |
[INFO] [stdout] 28 |       let size_option = chart_memo!(
[INFO] [stdout]    |  _______________________-
[INFO] [stdout] 29 | |         dashboard_data,
[INFO] [stdout] 30 | |         range,
[INFO] [stdout] 31 | |         overlay_flags,
[INFO] [stdout] 32 | |         |blocks| crate::stats::charts::block_size_chart(blocks),
[INFO] [stdout] 33 | |         |days| crate::stats::charts::block_size_chart_daily(days)
[INFO] [stdout] 34 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:35:30
[INFO] [stdout]    |
[INFO] [stdout] 35 |       let weight_util_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 36 | |         dashboard_data,
[INFO] [stdout] 37 | |         range,
[INFO] [stdout] 38 | |         overlay_flags,
[INFO] [stdout] 39 | |         |blocks| crate::stats::charts::weight_utilization_chart(blocks),
[INFO] [stdout] 40 | |         |days| crate::stats::charts::weight_utilization_chart_daily(days)
[INFO] [stdout] 41 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:42:21
[INFO] [stdout]    |
[INFO] [stdout] 42 |       let tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________-
[INFO] [stdout] 43 | |         dashboard_data,
[INFO] [stdout] 44 | |         range,
[INFO] [stdout] 45 | |         overlay_flags,
[INFO] [stdout] 46 | |         |blocks| crate::stats::charts::tx_count_chart(blocks),
[INFO] [stdout] 47 | |         |days| crate::stats::charts::tx_count_chart_daily(days)
[INFO] [stdout] 48 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:49:30
[INFO] [stdout]    |
[INFO] [stdout] 49 |       let avg_tx_size_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 50 | |         dashboard_data,
[INFO] [stdout] 51 | |         range,
[INFO] [stdout] 52 | |         overlay_flags,
[INFO] [stdout] 53 | |         |blocks| crate::stats::charts::avg_tx_size_chart(blocks),
[INFO] [stdout] 54 | |         |days| crate::stats::charts::avg_tx_size_chart_daily(days)
[INFO] [stdout] 55 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:56:27
[INFO] [stdout]    |
[INFO] [stdout] 56 |       let interval_option = chart_memo!(
[INFO] [stdout]    |  ___________________________-
[INFO] [stdout] 57 | |         dashboard_data,
[INFO] [stdout] 58 | |         range,
[INFO] [stdout] 59 | |         overlay_flags,
[INFO] [stdout] 60 | |         |blocks| crate::stats::charts::block_interval_chart(blocks),
[INFO] [stdout] 61 | |         |days| crate::stats::charts::block_interval_chart_daily(days)
[INFO] [stdout] 62 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]    |
[INFO] [stdout] 63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/network.rs:63:22
[INFO] [stdout]    |
[INFO] [stdout] 63 |       let tps_option = chart_memo!(
[INFO] [stdout]    |  ______________________-
[INFO] [stdout] 64 | |         dashboard_data,
[INFO] [stdout] 65 | |         range,
[INFO] [stdout] 66 | |         overlay_flags,
[INFO] [stdout] 67 | |         |blocks| crate::stats::charts::tps_chart(blocks),
[INFO] [stdout] 68 | |         |days| crate::stats::charts::tps_chart_daily(days)
[INFO] [stdout] 69 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]    |
[INFO] [stdout] 63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]    |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:331:30
[INFO] [stdout]     |
[INFO] [stdout] 331 |       let propagation_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 332 | |         dashboard_data,
[INFO] [stdout] 333 | |         range,
[INFO] [stdout] 334 | |         overlay_flags,
[INFO] [stdout] 335 | |         |blocks| crate::stats::charts::block_propagation_chart(blocks),
[INFO] [stdout] 336 | |         |_days| crate::stats::charts::no_data_chart("Rapid Consecutive Blocks")
[INFO] [stdout] 337 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:339:26
[INFO] [stdout]     |
[INFO] [stdout] 339 |       let weekday_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 340 | |         dashboard_data,
[INFO] [stdout] 341 | |         range,
[INFO] [stdout] 342 | |         overlay_flags,
[INFO] [stdout] 343 | |         |blocks| crate::stats::charts::weekday_activity_chart(blocks),
[INFO] [stdout] 344 | |         |days| crate::stats::charts::weekday_activity_chart_daily(days)
[INFO] [stdout] 345 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:348:25
[INFO] [stdout]     |
[INFO] [stdout] 348 |       let segwit_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 349 | |         dashboard_data,
[INFO] [stdout] 350 | |         range,
[INFO] [stdout] 351 | |         overlay_flags,
[INFO] [stdout] 352 | |         |blocks| crate::stats::charts::segwit_adoption_chart(blocks),
[INFO] [stdout] 353 | |         |days| crate::stats::charts::segwit_adoption_chart_daily(days)
[INFO] [stdout] 354 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:355:26
[INFO] [stdout]     |
[INFO] [stdout] 355 |       let taproot_option = chart_memo!(
[INFO] [stdout]     |  __________________________-
[INFO] [stdout] 356 | |         dashboard_data,
[INFO] [stdout] 357 | |         range,
[INFO] [stdout] 358 | |         overlay_flags,
[INFO] [stdout] 359 | |         |blocks| crate::stats::charts::taproot_chart(blocks),
[INFO] [stdout] 360 | |         |days| crate::stats::charts::taproot_chart_daily(days)
[INFO] [stdout] 361 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:362:34
[INFO] [stdout]     |
[INFO] [stdout] 362 |       let witness_version_option = chart_memo!(
[INFO] [stdout]     |  __________________________________-
[INFO] [stdout] 363 | |         dashboard_data,
[INFO] [stdout] 364 | |         range,
[INFO] [stdout] 365 | |         overlay_flags,
[INFO] [stdout] 366 | |         |blocks| crate::stats::charts::witness_version_chart(blocks),
[INFO] [stdout] 367 | |         |days| crate::stats::charts::witness_version_chart_daily(days)
[INFO] [stdout] 368 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:369:30
[INFO] [stdout]     |
[INFO] [stdout] 369 |       let witness_pct_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 370 | |         dashboard_data,
[INFO] [stdout] 371 | |         range,
[INFO] [stdout] 372 | |         overlay_flags,
[INFO] [stdout] 373 | |         |blocks| crate::stats::charts::witness_version_pct_chart(blocks),
[INFO] [stdout] 374 | |         |days| crate::stats::charts::witness_version_pct_chart_daily(days)
[INFO] [stdout] 375 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:376:33
[INFO] [stdout]     |
[INFO] [stdout] 376 |       let witness_tx_pct_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 377 | |         dashboard_data,
[INFO] [stdout] 378 | |         range,
[INFO] [stdout] 379 | |         overlay_flags,
[INFO] [stdout] 380 | |         |blocks| crate::stats::charts::witness_version_tx_pct_chart(blocks),
[INFO] [stdout] 381 | |         |days| crate::stats::charts::witness_version_tx_pct_chart_daily(days)
[INFO] [stdout] 382 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:383:31
[INFO] [stdout]     |
[INFO] [stdout] 383 |       let address_type_option = chart_memo!(
[INFO] [stdout]     |  _______________________________-
[INFO] [stdout] 384 | |         dashboard_data,
[INFO] [stdout] 385 | |         range,
[INFO] [stdout] 386 | |         overlay_flags,
[INFO] [stdout] 387 | |         |blocks| crate::stats::charts::address_type_chart(blocks),
[INFO] [stdout] 388 | |         |days| crate::stats::charts::address_type_chart_daily(days)
[INFO] [stdout] 389 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:390:35
[INFO] [stdout]     |
[INFO] [stdout] 390 |       let address_type_pct_option = chart_memo!(
[INFO] [stdout]     |  ___________________________________-
[INFO] [stdout] 391 | |         dashboard_data,
[INFO] [stdout] 392 | |         range,
[INFO] [stdout] 393 | |         overlay_flags,
[INFO] [stdout] 394 | |         |blocks| crate::stats::charts::address_type_pct_chart(blocks),
[INFO] [stdout] 395 | |         |days| crate::stats::charts::address_type_pct_chart_daily(days)
[INFO] [stdout] 396 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:397:37
[INFO] [stdout]     |
[INFO] [stdout] 397 |       let taproot_spend_type_option = chart_memo!(
[INFO] [stdout]     |  _____________________________________-
[INFO] [stdout] 398 | |         dashboard_data,
[INFO] [stdout] 399 | |         range,
[INFO] [stdout] 400 | |         overlay_flags,
[INFO] [stdout] 401 | |         |blocks| crate::stats::charts::taproot_spend_type_chart(blocks),
[INFO] [stdout] 402 | |         |days| crate::stats::charts::taproot_spend_type_chart_daily(days)
[INFO] [stdout] 403 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:404:32
[INFO] [stdout]     |
[INFO] [stdout] 404 |       let witness_share_option = chart_memo!(
[INFO] [stdout]     |  ________________________________-
[INFO] [stdout] 405 | |         dashboard_data,
[INFO] [stdout] 406 | |         range,
[INFO] [stdout] 407 | |         overlay_flags,
[INFO] [stdout] 408 | |         |blocks| crate::stats::charts::witness_share_chart(blocks),
[INFO] [stdout] 409 | |         |days| crate::stats::charts::witness_share_chart_daily(days)
[INFO] [stdout] 410 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:411:38
[INFO] [stdout]     |
[INFO] [stdout] 411 |       let cumulative_adoption_option = chart_memo!(
[INFO] [stdout]     |  ______________________________________-
[INFO] [stdout] 412 | |         dashboard_data,
[INFO] [stdout] 413 | |         range,
[INFO] [stdout] 414 | |         overlay_flags,
[INFO] [stdout] 415 | |         |blocks| crate::stats::charts::cumulative_adoption_chart(blocks),
[INFO] [stdout] 416 | |         |days| crate::stats::charts::cumulative_adoption_chart_daily(days)
[INFO] [stdout] 417 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:418:33
[INFO] [stdout]     |
[INFO] [stdout] 418 |       let multi_velocity_option = chart_memo!(
[INFO] [stdout]     |  _________________________________-
[INFO] [stdout] 419 | |         dashboard_data,
[INFO] [stdout] 420 | |         range,
[INFO] [stdout] 421 | |         overlay_flags,
[INFO] [stdout] 422 | |         |blocks| crate::stats::charts::multi_velocity_chart(blocks),
[INFO] [stdout] 423 | |         |days| crate::stats::charts::multi_velocity_chart_daily(days)
[INFO] [stdout] 424 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:425:25
[INFO] [stdout]     |
[INFO] [stdout] 425 |       let sunset_option = chart_memo!(
[INFO] [stdout]     |  _________________________-
[INFO] [stdout] 426 | |         dashboard_data,
[INFO] [stdout] 427 | |         range,
[INFO] [stdout] 428 | |         overlay_flags,
[INFO] [stdout] 429 | |         |blocks| crate::stats::charts::address_sunset_chart(blocks),
[INFO] [stdout] 430 | |         |days| crate::stats::charts::address_sunset_chart_daily(days)
[INFO] [stdout] 431 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:434:22
[INFO] [stdout]     |
[INFO] [stdout] 434 |       let rbf_option = chart_memo!(
[INFO] [stdout]     |  ______________________-
[INFO] [stdout] 435 | |         dashboard_data,
[INFO] [stdout] 436 | |         range,
[INFO] [stdout] 437 | |         overlay_flags,
[INFO] [stdout] 438 | |         |blocks| crate::stats::charts::rbf_chart(blocks),
[INFO] [stdout] 439 | |         |days| crate::stats::charts::rbf_chart_daily(days)
[INFO] [stdout] 440 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:441:28
[INFO] [stdout]     |
[INFO] [stdout] 441 |       let utxo_flow_option = chart_memo!(
[INFO] [stdout]     |  ____________________________-
[INFO] [stdout] 442 | |         dashboard_data,
[INFO] [stdout] 443 | |         range,
[INFO] [stdout] 444 | |         overlay_flags,
[INFO] [stdout] 445 | |         |blocks| crate::stats::charts::utxo_flow_chart(blocks),
[INFO] [stdout] 446 | |         |days| crate::stats::charts::utxo_flow_chart_daily(days)
[INFO] [stdout] 447 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:448:27
[INFO] [stdout]     |
[INFO] [stdout] 448 |       let batching_option = chart_memo!(
[INFO] [stdout]     |  ___________________________-
[INFO] [stdout] 449 | |         dashboard_data,
[INFO] [stdout] 450 | |         range,
[INFO] [stdout] 451 | |         overlay_flags,
[INFO] [stdout] 452 | |         |blocks| crate::stats::charts::batching_chart(blocks),
[INFO] [stdout] 453 | |         |days| crate::stats::charts::batching_chart_daily(days)
[INFO] [stdout] 454 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:455:29
[INFO] [stdout]     |
[INFO] [stdout] 455 |       let largest_tx_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 456 | |         dashboard_data,
[INFO] [stdout] 457 | |         range,
[INFO] [stdout] 458 | |         overlay_flags,
[INFO] [stdout] 459 | |         |blocks| crate::stats::charts::largest_tx_chart(blocks),
[INFO] [stdout] 460 | |         |days| crate::stats::charts::largest_tx_chart_daily(days)
[INFO] [stdout] 461 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:462:29
[INFO] [stdout]     |
[INFO] [stdout] 462 |       let tx_density_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout] 463 | |         dashboard_data,
[INFO] [stdout] 464 | |         range,
[INFO] [stdout] 465 | |         overlay_flags,
[INFO] [stdout] 466 | |         |blocks| crate::stats::charts::tx_density_chart(blocks),
[INFO] [stdout] 467 | |         |days| crate::stats::charts::tx_density_chart_daily(days)
[INFO] [stdout] 468 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:469:30
[INFO] [stdout]     |
[INFO] [stdout] 469 |       let utxo_growth_option = chart_memo!(
[INFO] [stdout]     |  ______________________________-
[INFO] [stdout] 470 | |         dashboard_data,
[INFO] [stdout] 471 | |         range,
[INFO] [stdout] 472 | |         overlay_flags,
[INFO] [stdout] 473 | |         |blocks| crate::stats::charts::utxo_growth_chart(blocks),
[INFO] [stdout] 474 | |         |days| crate::stats::charts::utxo_growth_chart_daily(days)
[INFO] [stdout] 475 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:62:45
[INFO] [stdout]     |
[INFO] [stdout]  62 |                       DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                                               ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  62 |                     &DashboardData::PerBlock(ref b) => b.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: cannot explicitly borrow within an implicitly-borrowing pattern in Rust 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:63:42
[INFO] [stdout]     |
[INFO] [stdout]  63 |                       DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                                            ^^^^^ occurs within macro expansion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/network.rs:476:36
[INFO] [stdout]     |
[INFO] [stdout] 476 |       let tx_type_evolution_option = chart_memo!(
[INFO] [stdout]     |  ____________________________________-
[INFO] [stdout] 477 | |         dashboard_data,
[INFO] [stdout] 478 | |         range,
[INFO] [stdout] 479 | |         overlay_flags,
[INFO] [stdout] ...   |
[INFO] [stdout] 484 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/match-ergonomics.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] help: match on the reference with a reference pattern to avoid implicitly borrowing
[INFO] [stdout]     |
[INFO] [stdout]  63 |                     &DashboardData::Daily(ref d) => d.len(),
[INFO] [stdout]     |                     +
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:228:27
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let stored_hash = match db::query_block_hash(&conn, height) {
[INFO] [stdout]     |                                 -----------------------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 201 |         let canonical_hash = match rpc.get_block_hash(height).await {
[INFO] [stdout]     |                                    --------------------------------
[INFO] [stdout]     |                                    |                          |
[INFO] [stdout]     |                                    |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                    |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 215 |                 db::insert_reorg(&conn, height, &stored_hash, &canonical_hash);
[INFO] [stdout]     |                 --------------------------------------------------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 218 |             let _ = db::delete_block(&conn, height);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |             match rpc.fetch_block_by_height(height).await {
[INFO] [stdout]     |                   ---------------------------------------
[INFO] [stdout]     |                   |                                 |
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                   |                                 `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 227 |                 Ok(block) => {
[INFO] [stdout] 228 |                     match db::insert_blocks(&conn, &[block]) { Err(e) => {
[INFO] [stdout]     |                           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^       -
[INFO] [stdout]     |                           |                                        |
[INFO] [stdout]     |                           |                                        `e` calls a custom destructor
[INFO] [stdout]     |                           |                                        `e` will be dropped later as of Edition 2024
[INFO] [stdout]     |                           this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                           up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 236 |                 }
[INFO] [stdout]     |                 - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout] 237 |                 Err(e) => tracing::error!(
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]     = note: `--force-warn tail-expr-drop-order` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:226:19
[INFO] [stdout]     |
[INFO] [stdout] 196 |         let stored_hash = match db::query_block_hash(&conn, height) {
[INFO] [stdout]     |                                 -----------------------------------
[INFO] [stdout]     |                                 |
[INFO] [stdout]     |                                 this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                                 `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 201 |         let canonical_hash = match rpc.get_block_hash(height).await {
[INFO] [stdout]     |                                    --------------------------------
[INFO] [stdout]     |                                    |                          |
[INFO] [stdout]     |                                    |                          this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]     |                                    |                          `#3` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]     |                                    `#2` will be dropped later as of Edition 2024
[INFO] [stdout]     |                                    `__awaitee` calls a custom destructor
[INFO] [stdout]     |                                    `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 215 |                 db::insert_reorg(&conn, height, &stored_hash, &canonical_hash);
[INFO] [stdout]     |                 --------------------------------------------------------------
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]     |                 `#4` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 218 |             let _ = db::delete_block(&conn, height);
[INFO] [stdout]     |                     -------------------------------
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#5`
[INFO] [stdout]     |                     `#5` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 226 |             match rpc.fetch_block_by_height(height).await {
[INFO] [stdout]     |                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]     |                   |                                 |
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#10`
[INFO] [stdout]     |                   |                                 up until Edition 2021 `#10` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   |                                 this value will be stored in a temporary; let us call it `#7`
[INFO] [stdout]     |                   |                                 `#7` will be dropped later as of Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#9`
[INFO] [stdout]     |                   up until Edition 2021 `#9` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]     |                   this value will be stored in a temporary; let us call it `#6`
[INFO] [stdout]     |                   `#6` will be dropped later as of Edition 2024
[INFO] [stdout] 227 |                 Ok(block) => {
[INFO] [stdout] 228 |                     match db::insert_blocks(&conn, &[block]) { Err(e) => {
[INFO] [stdout]     |                                                                    -
[INFO] [stdout]     |                                                                    |
[INFO] [stdout]     |                                                                    `e` calls a custom destructor
[INFO] [stdout]     |                                                                    `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 237 |                 Err(e) => tracing::error!(
[INFO] [stdout]     |                     -
[INFO] [stdout]     |                     |
[INFO] [stdout]     |                     this value will be stored in a temporary; let us call it `#8`
[INFO] [stdout]     |                     `#8` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 241 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#9` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#9` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `#4` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#5` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#7` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#7` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]     = note: `#8` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#8` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]     |
[INFO] [stdout] 680 | impl Drop for Bytes {
[INFO] [stdout]     | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:323:29
[INFO] [stdout]     |
[INFO] [stdout] 316 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 323 |             if let Err(e) = db::update_block_extras(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 327 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:434:29
[INFO] [stdout]     |
[INFO] [stdout] 427 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 434 |             if let Err(e) = db::insert_blocks(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 438 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/ingest.rs:518:29
[INFO] [stdout]     |
[INFO] [stdout] 511 |             let conn = match pool.get() {
[INFO] [stdout]     |                 ----
[INFO] [stdout]     |                 |
[INFO] [stdout]     |                 `conn` calls a custom destructor
[INFO] [stdout]     |                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 518 |             if let Err(e) = db::insert_blocks(&conn, &blocks) {
[INFO] [stdout]     |                             ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                             |
[INFO] [stdout]     |                             this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                             up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout] 522 |         }
[INFO] [stdout]     |         - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]    --> src/stats/startup.rs:59:25
[INFO] [stdout]     |
[INFO] [stdout]  50 |         let conn = pool
[INFO] [stdout]     |             ----
[INFO] [stdout]     |             |
[INFO] [stdout]     |             `conn` calls a custom destructor
[INFO] [stdout]     |             `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  59 |         if let Err(e) = db::rebuild_all_daily_blocks(&conn) {
[INFO] [stdout]     |                         ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |                         |
[INFO] [stdout]     |                         this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]     |                         up until Edition 2021 `#1` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  62 |     }
[INFO] [stdout]     |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#1` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]    --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]     |
[INFO] [stdout] 611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout] 612 | | where
[INFO] [stdout] 613 | |     M: ManageConnection,
[INFO] [stdout]     | |________________________^
[INFO] [stdout]     = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/zmq_subscriber.rs:694:15
[INFO] [stdout]      |
[INFO] [stdout]  692 |             tokio::time::sleep(Duration::from_secs(1)).await;
[INFO] [stdout]      |             ------------------------------------------------
[INFO] [stdout]      |             |
[INFO] [stdout]      |             `__awaitee` calls a custom destructor
[INFO] [stdout]      |             `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  693 |         }
[INFO] [stdout]  694 |         match state.rpc.get_block_txids(hash).await {
[INFO] [stdout]      |               ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |               |                               |
[INFO] [stdout]      |               |                               this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |               |                               up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               |                               this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |               |                               `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |               up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |               this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |               `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  698 |             Err(e) => {
[INFO] [stdout]      |                 -
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `e` calls a custom destructor
[INFO] [stdout]      |                 `e` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  706 |     }
[INFO] [stdout]      |     - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/startup.rs:244:23
[INFO] [stdout]      |
[INFO] [stdout]  243 |                 tokio::time::sleep(std::time::Duration::from_secs(90)).await;
[INFO] [stdout]      |                 ------------------------------------------------------------
[INFO] [stdout]      |                 |
[INFO] [stdout]      |                 `__awaitee` calls a custom destructor
[INFO] [stdout]      |                 `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  244 |                 match state.rpc.fetch_price().await {
[INFO] [stdout]      |                       ^^^^^^^^^^^^^^^^^^^^^^^^-----
[INFO] [stdout]      |                       |                       |
[INFO] [stdout]      |                       |                       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                       |                       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       |                       this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                       |                       `#2` will be dropped later as of Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                       up until Edition 2021 `#3` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                       this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                       `#1` will be dropped later as of Edition 2024
[INFO] [stdout]  245 |                     Ok(price) => state.price_cache.insert((), price),
[INFO] [stdout]  246 |                     Err(e) => tracing::debug!("Price refresh failed: {e}"),
[INFO] [stdout]      |                         -
[INFO] [stdout]      |                         |
[INFO] [stdout]      |                         `e` calls a custom destructor
[INFO] [stdout]      |                         `e` will be dropped later as of Edition 2024
[INFO] [stdout]  247 |                 }
[INFO] [stdout]  248 |             }
[INFO] [stdout]      |             - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#3` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout]      = note: `#2` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `#2` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: `e` may invoke a custom destructor because it contains a trait object
[INFO] [stdout] note: `e` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/bytes-1.11.1/src/bytes.rs:680:1
[INFO] [stdout]      |
[INFO] [stdout]  680 | impl Drop for Bytes {
[INFO] [stdout]      | ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: relative drop order changing in Rust 2024
[INFO] [stdout]     --> src/stats/startup.rs:294:39
[INFO] [stdout]      |
[INFO] [stdout]  265 |                   tokio::time::sleep(std::time::Duration::from_secs(15)).await;
[INFO] [stdout]      |                   ------------------------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   `__awaitee` calls a custom destructor
[INFO] [stdout]      |                   `__awaitee` will be dropped later as of Edition 2024
[INFO] [stdout]  266 |                   ingest::poll_new_blocks(&state.rpc, &state.db).await;
[INFO] [stdout]      |                   ----------------------------------------------------
[INFO] [stdout]      |                   |
[INFO] [stdout]      |                   this value will be stored in a temporary; let us call it `#1`
[INFO] [stdout]      |                   `#1` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  273 | /                 ingest::verify_recent_blocks(
[INFO] [stdout]  274 | |                     &state.rpc,
[INFO] [stdout]  275 | |                     &state.db,
[INFO] [stdout]  276 | |                     super::rpc::REORG_DETECTION_DEPTH,
[INFO] [stdout]  277 | |                 )
[INFO] [stdout]  278 | |                 .await;
[INFO] [stdout]      | |                      -
[INFO] [stdout]      | |                      |
[INFO] [stdout]      | |______________________this value will be stored in a temporary; let us call it `#2`
[INFO] [stdout]      |                        `#2` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  294 |                       if let Ok(conn) = state.db.get() {
[INFO] [stdout]      |                                 ----    ^^^^^^^^^^^^^^
[INFO] [stdout]      |                                 |       |
[INFO] [stdout]      |                                 |       this value will be stored in a temporary; let us call it `#4`
[INFO] [stdout]      |                                 |       up until Edition 2021 `#4` is dropped last but will be dropped earlier in Edition 2024
[INFO] [stdout]      |                                 `conn` calls a custom destructor
[INFO] [stdout]      |                                 `conn` will be dropped later as of Edition 2024
[INFO] [stdout] ...
[INFO] [stdout]  301 |                           let _ = db::refresh_daily_block(&conn, &today);
[INFO] [stdout]      |                                   --------------------------------------
[INFO] [stdout]      |                                   |
[INFO] [stdout]      |                                   this value will be stored in a temporary; let us call it `#3`
[INFO] [stdout]      |                                   `#3` will be dropped later as of Edition 2024
[INFO] [stdout]  302 |                       }
[INFO] [stdout]  303 |                   }
[INFO] [stdout]      |                   - now the temporary value is dropped here, before the local variables in the block or statement
[INFO] [stdout]      |
[INFO] [stdout] note: `#4` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]      |
[INFO] [stdout]  611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout]  612 | | where
[INFO] [stdout]  613 | |     M: ManageConnection,
[INFO] [stdout]      | |________________________^
[INFO] [stdout] note: `__awaitee` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/pin-project-lite-0.2.17/src/lib.rs:1317:9
[INFO] [stdout]      |
[INFO] [stdout] 1317 | /         impl $(<
[INFO] [stdout] 1318 | |             $( $lifetime $(: $lifetime_bound)? ,)*
[INFO] [stdout] 1319 | |             $( $generics
[INFO] [stdout] 1320 | |                 $(: $generics_bound)?
[INFO] [stdout] ...    |
[INFO] [stdout] 1323 | |             ),*
[INFO] [stdout] 1324 | |         >)? $crate::__private::Drop for $self_ty
[INFO] [stdout]      | |________________________________________________^
[INFO] [stdout]      |
[INFO] [stdout]     ::: /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/tokio-1.50.0/src/runtime/time/entry.rs:280:1
[INFO] [stdout]      |
[INFO] [stdout]  280 | / pin_project! {
[INFO] [stdout] ...    |
[INFO] [stdout]  310 | | }
[INFO] [stdout]      | |_- in this macro invocation
[INFO] [stdout] note: `conn` invokes this custom destructor
[INFO] [stdout]     --> /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/r2d2-0.8.10/src/lib.rs:611:1
[INFO] [stdout]      |
[INFO] [stdout]  611 | / impl<M> Drop for PooledConnection<M>
[INFO] [stdout]  612 | | where
[INFO] [stdout]  613 | |     M: ManageConnection,
[INFO] [stdout]      | |________________________^
[INFO] [stdout]      = note: `#3` may invoke a custom destructor because it contains a trait object
[INFO] [stdout]      = note: most of the time, changing drop order is harmless; inspect the `impl Drop`s for side effects like releasing locks or sending messages
[INFO] [stdout]      = warning: this changes meaning in Rust 2024
[INFO] [stdout]      = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-tail-expr-scope.html>
[INFO] [stdout]      = note: this warning originates in the macro `$crate::__pin_project_make_drop_impl` which comes from the expansion of the macro `pin_project` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:48:53
[INFO] [stdout]    |
[INFO] [stdout] 48 |                       let all_embedded_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _____________________________________________________-
[INFO] [stdout] 49 | |                         |blocks| crate::stats::charts::all_embedded_share_chart(blocks),
[INFO] [stdout] 50 | |                         |days| crate::stats::charts::all_embedded_share_chart_daily(days)
[INFO] [stdout] 51 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: `--force-warn if-let-rescope` implied by `--force-warn rust-2024-compatibility`
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:52:48
[INFO] [stdout]    |
[INFO] [stdout] 52 |                       let unified_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________-
[INFO] [stdout] 53 | |                         |blocks| crate::stats::charts::unified_embedded_count_chart(blocks),
[INFO] [stdout] 54 | |                         |days| crate::stats::charts::unified_embedded_count_chart_daily(days)
[INFO] [stdout] 55 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:56:49
[INFO] [stdout]    |
[INFO] [stdout] 56 |                       let unified_volume_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 57 | |                         |blocks| crate::stats::charts::unified_embedded_volume_chart(blocks),
[INFO] [stdout] 58 | |                         |days| crate::stats::charts::unified_embedded_volume_chart_daily(days)
[INFO] [stdout] 59 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:62:43
[INFO] [stdout]    |
[INFO] [stdout] 62 |                       let op_count_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 63 | |                         |blocks| crate::stats::charts::op_return_count_chart(blocks),
[INFO] [stdout] 64 | |                         |days| crate::stats::charts::op_return_count_chart_daily(days)
[INFO] [stdout] 65 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:66:43
[INFO] [stdout]    |
[INFO] [stdout] 66 |                       let op_bytes_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ___________________________________________-
[INFO] [stdout] 67 | |                         |blocks| crate::stats::charts::op_return_bytes_chart(blocks),
[INFO] [stdout] 68 | |                         |days| crate::stats::charts::op_return_bytes_chart_daily(days)
[INFO] [stdout] 69 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:70:44
[INFO] [stdout]    |
[INFO] [stdout] 70 |                       let runes_pct_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________-
[INFO] [stdout] 71 | |                         |blocks| crate::stats::charts::runes_pct_chart(blocks),
[INFO] [stdout] 72 | |                         |days| crate::stats::charts::runes_pct_chart_daily(days)
[INFO] [stdout] 73 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:74:49
[INFO] [stdout]    |
[INFO] [stdout] 74 |                       let op_block_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _________________________________________________-
[INFO] [stdout] 75 | |                         |blocks| crate::stats::charts::op_return_block_share_chart(blocks),
[INFO] [stdout] 76 | |                         |days| crate::stats::charts::op_return_block_share_chart_daily(days)
[INFO] [stdout] 77 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:80:46
[INFO] [stdout]    |
[INFO] [stdout] 80 |                       let inscription_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ______________________________________________-
[INFO] [stdout] 81 | |                         |blocks| crate::stats::charts::inscription_chart(blocks),
[INFO] [stdout] 82 | |                         |days| crate::stats::charts::inscription_chart_daily(days)
[INFO] [stdout] 83 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:84:52
[INFO] [stdout]    |
[INFO] [stdout] 84 |                       let inscription_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ____________________________________________________-
[INFO] [stdout] 85 | |                         |blocks| crate::stats::charts::inscription_share_chart(blocks),
[INFO] [stdout] 86 | |                         |days| crate::stats::charts::inscription_share_chart_daily(days)
[INFO] [stdout] 87 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:88:55
[INFO] [stdout]    |
[INFO] [stdout] 88 |                       let inscription_envelope_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________________-
[INFO] [stdout] 89 | |                         |blocks| crate::stats::charts::inscription_envelope_chart(blocks),
[INFO] [stdout] 90 | |                         |days| crate::stats::charts::inscription_envelope_chart_daily(days)
[INFO] [stdout] 91 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:92:56
[INFO] [stdout]    |
[INFO] [stdout] 92 |                       let inscription_fee_share_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  ________________________________________________________-
[INFO] [stdout] 93 | |                         |blocks| crate::stats::charts::inscription_fee_share_chart(blocks),
[INFO] [stdout] 94 | |                         |days| crate::stats::charts::inscription_fee_share_chart_daily(days)
[INFO] [stdout] 95 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/embedded.rs:96:47
[INFO] [stdout]    |
[INFO] [stdout] 96 |                       let protocol_fee_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]    |  _______________________________________________-
[INFO] [stdout] 97 | |                         |blocks| crate::stats::charts::protocol_fee_competition_chart(blocks),
[INFO] [stdout] 98 | |                         |days| crate::stats::charts::protocol_fee_competition_chart_daily(days)
[INFO] [stdout] 99 | |                     );
[INFO] [stdout]    | |_____________________- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/embedded.rs:100:47
[INFO] [stdout]     |
[INFO] [stdout] 100 |                       let coinbase_msg_option = chart_memo!(dashboard_data, range, overlay_flags,
[INFO] [stdout]     |  _______________________________________________-
[INFO] [stdout] 101 | |                         |blocks| crate::stats::charts::coinbase_message_length_chart(blocks),
[INFO] [stdout] 102 | |                         |_days| crate::stats::charts::coinbase_message_length_chart_daily(_days)
[INFO] [stdout] 103 | |                     );
[INFO] [stdout]     | |_____________________- in this macro invocation
[INFO] [stdout]     = warning: this changes meaning in Rust 2024
[INFO] [stdout]     = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]     = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:58:31
[INFO] [stdout]    |
[INFO] [stdout] 58 |       let subsidy_fees_option = chart_memo!(
[INFO] [stdout]    |  _______________________________-
[INFO] [stdout] 59 | |         dashboard_data,
[INFO] [stdout] 60 | |         range,
[INFO] [stdout] 61 | |         overlay_flags,
[INFO] [stdout] 62 | |         |blocks| crate::stats::charts::subsidy_vs_fees_chart(blocks),
[INFO] [stdout] 63 | |         |days| crate::stats::charts::subsidy_vs_fees_chart_daily(days)
[INFO] [stdout] 64 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:66:29
[INFO] [stdout]    |
[INFO] [stdout] 66 |       let avg_fee_tx_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 67 | |         dashboard_data,
[INFO] [stdout] 68 | |         range,
[INFO] [stdout] 69 | |         overlay_flags,
[INFO] [stdout] 70 | |         |blocks| crate::stats::charts::avg_fee_per_tx_chart(blocks),
[INFO] [stdout] 71 | |         |days| crate::stats::charts::avg_fee_per_tx_chart_daily(days)
[INFO] [stdout] 72 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:74:30
[INFO] [stdout]    |
[INFO] [stdout] 74 |       let median_rate_option = chart_memo!(
[INFO] [stdout]    |  ______________________________-
[INFO] [stdout] 75 | |         dashboard_data,
[INFO] [stdout] 76 | |         range,
[INFO] [stdout] 77 | |         overlay_flags,
[INFO] [stdout] 78 | |         |blocks| crate::stats::charts::median_fee_rate_chart(blocks),
[INFO] [stdout] 79 | |         |days| crate::stats::charts::median_fee_rate_chart_daily(days)
[INFO] [stdout] 80 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:82:36
[INFO] [stdout]    |
[INFO] [stdout] 82 |       let fee_revenue_share_option = chart_memo!(
[INFO] [stdout]    |  ____________________________________-
[INFO] [stdout] 83 | |         dashboard_data,
[INFO] [stdout] 84 | |         range,
[INFO] [stdout] 85 | |         overlay_flags,
[INFO] [stdout] 86 | |         |blocks| crate::stats::charts::fee_revenue_share_chart(blocks),
[INFO] [stdout] 87 | |         |days| crate::stats::charts::fee_revenue_share_chart_daily(days)
[INFO] [stdout] 88 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]    |
[INFO] [stdout] 80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]    |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]    |                                              |
[INFO] [stdout]    |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]   --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]   --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]    |
[INFO] [stdout] 82 |               } else {
[INFO] [stdout]    |               ^
[INFO] [stdout]    |
[INFO] [stdout]   ::: src/routes/observatory/fees.rs:90:29
[INFO] [stdout]    |
[INFO] [stdout] 90 |       let btc_volume_option = chart_memo!(
[INFO] [stdout]    |  _____________________________-
[INFO] [stdout] 91 | |         dashboard_data,
[INFO] [stdout] 92 | |         range,
[INFO] [stdout] 93 | |         overlay_flags,
[INFO] [stdout] 94 | |         |blocks| crate::stats::charts::btc_volume_chart(blocks),
[INFO] [stdout] 95 | |         |days| crate::stats::charts::btc_volume_chart_daily(days)
[INFO] [stdout] 96 | |     );
[INFO] [stdout]    | |_____- in this macro invocation
[INFO] [stdout]    = warning: this changes meaning in Rust 2024
[INFO] [stdout]    = note: for more information, see <https://doc.rust-lang.org/edition-guide/rust-2024/temporary-if-let-scope.html>
[INFO] [stdout]    = note: this warning originates in the macro `chart_memo` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: `if let` assigns a shorter lifetime since Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:80:32
[INFO] [stdout]     |
[INFO] [stdout]  80 |               let base_json = if let Ok(c) = cache.lock() {
[INFO] [stdout]     |                                  ^^^^^^^^^^^^------------
[INFO] [stdout]     |                                              |
[INFO] [stdout]     |                                              this value has a significant drop implementation which may observe a major change in drop order and requires your discretion
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[INFO] [stdout]     | |_____- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout] note: value invokes this custom destructor
[INFO] [stdout]    --> /rustc/622891a4e29178280638a6b63a8908bde2c0c854/library/std/src/sync/poison/mutex.rs:741:0
[INFO] [stdout] help: the value is now dropped here in Edition 2024
[INFO] [stdout]    --> src/routes/observatory/shared/mod.rs:82:13
[INFO] [stdout]     |
[INFO] [stdout]  82 |               } else {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]    ::: src/routes/observatory/fees.rs:98:29
[INFO] [stdout]     |
[INFO] [stdout]  98 |       let value_flow_option = chart_memo!(
[INFO] [stdout]     |  _____________________________-
[INFO] [stdout]  99 | |         dashboard_data,
[INFO] [stdout] 100 | |         range,
[INFO] [stdout] 101 | |         overlay_flags,
[INFO] [stdout] 102 | |         |blocks| crate::stats::charts::value_flow_chart(blocks),
[INFO] [stdout] 103 | |         |days| crate::stats::charts::value_flow_chart_daily(days)
[INFO] [stdout] 104 | |     );
[WARN] too many lines in the log, truncating it
